Rapid quality assurance with Requirements Smells
نویسندگان
چکیده
Context: Bad requirements quality can cause expensive consequences during the software development lifecycle, especially if iterations are long and feedback comes late. Objectives: We aim at a light-weight static requirements analysis approach that allows for rapid checks immediately when requirements are written down. Method: We transfer the concept of code smells to Requirements Engineering as Requirements Smells. To evaluate the benefits and limitations, we define Requirements Smells, realize our concepts for a smell detection in a prototype called Smella and apply Smella in a series of cases provided by three industrial and a university context. Results: The automatic detection yields an average precision of 59% at an average recall of 82% with high variation. The evaluation in practical environments indicates benefits such as an increase of the awareness of quality defects. Yet, some smells were not clearly distinguishable. Conclusion: Lightweight smell detection can uncover many practically relevant requirements defects in a reasonably precise way. Although some smells need to be defined more clearly, smell detection provides a helpful means to support quality assurance in Requirements Engineering, for instance, as a supplement to reviews.
منابع مشابه
Model Smells In Uml Class Diagrams
Models are the primary artifacts in software development processes following the model-based paradigm. Especially in Model Driven Software Development (MDSD), models become primary artifacts where quality assurance of the overall software product considerably relies on the quality assurance of involved software models. In this report the approach is focused towards the importance of Model Drive...
متن کاملJava Quality Assurance by Detecting Code Smells
Software inspection is a known technique for improving software quality. It involves carefully examining the code, the design, and the documentation of software and checking these for aspects that are known to be potentially problematic based on past experience. Code smells are a metaphor to describe patterns that are generally associated with bad design and bad programming practices. Originall...
متن کاملJAVACHECK: A Domain Specific Language for the Static Analysis of Java Code
The increasing complexity of software systems has raised the need for code analysis tools to assess its quality. However, these tools offer predefined metrics or evaluation criteria, which are frequently hard to extend or modify. For this purpose, we have developed JAVACHECK, a DomainSpecific Language targeted to define expected properties of Java code bases. JAVACHECK can be used in a variety ...
متن کاملInvestigating the Role of Code Smells in Preventive Maintenance
The quest for improving the software quality has given rise to various studies which focus on the enhancement of the quality of software through various processes. Code smells, which are indicators of the software quality have not been put to an extensive study for as to determine their role in the prediction of defects in the software. This study aims to investigate the role of code smells in ...
متن کاملReviewing Natural Language Requirements with Requirements Smells
The quality of requirements artifacts, such as software requirements specifications, is crucial for the success of a software development project, because the later a defect is found the more expensive it is to fix. However, as virtually all requirements are still written in natural language, and requirements artifacts grow often large, they are very hard to review for quality due to the imprec...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Journal of Systems and Software
دوره 123 شماره
صفحات -
تاریخ انتشار 2017